在开发的过程中,源码好配置文件都必须经常改动,如果每修改一个文件,然后都需要通过覆盖旧文件的方式提交,就会变得很麻烦,因此可以通过打补丁包方便我们的提交过程。对于php,python, 源代码,配置文件可通过此方式,二进制文件则无能为力。
使用git仓库
1 | git diff > a.patch |
1 | patch --dry-run -p1 < a.patch |
1 | patch -p1 < a.patch |
使用普通的目录(a目录为原目录,b目录为改动后的新目录)
通过比对两个目录生成补丁包
1 | diff -Nur a b > a.patch |
尝试把补丁包打到别的目录(要进入该目录)
1 | patch --dry-run -p1 < a.patch |
(如果diff时不小心写成了diff -Nur b a, 则要使用参数p2)
第二步没报错,则真正打补丁
1 | patch -p1 < a.patch |
(如果diff时不小心写成了diff -Nur b a, 则要使用参数p2)